package main

import "fmt"

func main() {
	b()
}

func trace(s string) {
	fmt.Println("entering:", s)
}

func untrace(s string) {
	fmt.Println("leaving:", s)
}

func a1() {
	trace("a")
	defer untrace("a")
	fmt.Printf("in a \n")
}

func b() {
	trace("b")
	defer untrace("b")
	fmt.Printf("in b \n")
	a1()
}
